﻿using System;
namespace Infraestructure.Data.MainModule.Tests
{
    public sealed class TestConstants
    {

        static TestConstants instance=null;
        static readonly object padlock = new object();

        #region Constants

        public Guid ADDRESS_ID;
        public Guid USER_ID;
        public Guid ADDRESS_TYPE_ID;
        public Guid BANK_ACCOUNT_ID;
        public Guid BILLING_INFORMATION_ID;
        public Guid GROUP_BRANCH_ID;
        public Guid BRANCH_ID;
        public Guid COMMISION_ID;
        public Guid COUNTRY_ID;
        public Guid MEMBERSHIP_USER_ID;
        public Guid IDENTITY_ID;
        public Guid ORDER_ID;
        public Guid PHONE_ID;
        public Guid VIRTUAL_ACCOUNT_ID;
        public Guid GROUP_BRANCH_CURRENCY_ID;
        public Guid GROUP_BRANCH_CURRENCY_CURRENCY_ID;
        public Guid RETAIL_RATE_ID;
        public Guid RETAIL_RATE_RATE_ID;
        public Guid RETAIL_RATE_BRANCH_ID;
        public Guid CREDIT_CARD_ID;
        public Guid RATE_PARAM_TYPE_ID;
        public Guid CUSTOMER_SERVICE_ID;
        public Guid RATE_ID;
        public Guid ORDER_DETAIL_ID;
        public Guid EMPLOYEE_ID;
        public Guid CUSTOMER_ID;
        public Guid CUSTOMER_COMPANY_ID;
        public Guid CUSTOMER_MTS_ID;
        public Guid GENDER_ID;
        public Guid MARITAL_STATUS_ID;
        public string COMPANY_NAME;
        public string CUIT;
        public string ISOALPHA2 = "A2";
        public string ISOALPHA3 = "A3";
        public string ISONUMERIC = "IN";
        public string COUNTRY_NAME;

        #endregion


        private TestConstants()
        {
            ADDRESS_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            USER_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            ADDRESS_TYPE_ID = new Guid("5ACBF92E-A0CE-427A-AB07-EE66643F9ACC");
            BANK_ACCOUNT_ID = new Guid("5ACBF92E-A0CE-427A-AB07-EE66643F9ACD");
            BILLING_INFORMATION_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            GROUP_BRANCH_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            BRANCH_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            COMMISION_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            COUNTRY_ID =  new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            MEMBERSHIP_USER_ID = new Guid("1A801076-E484-306E-7C1A-A970101A7CED");
            IDENTITY_ID = new Guid("f4dd85cf-ce1e-e2d1-3171-650938abd2b7");
            ORDER_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            PHONE_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            VIRTUAL_ACCOUNT_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            GROUP_BRANCH_CURRENCY_ID = new Guid("898fd2eb-2498-4eb8-8ca9-63154908c33d");
            GROUP_BRANCH_CURRENCY_CURRENCY_ID = new Guid("f4dd85cf-ce1e-e2d1-3171-650938abd2b7");
            RETAIL_RATE_ID = new Guid("f4dd85cf-ce1e-e2d1-3171-650938abd2b7");
            RETAIL_RATE_RATE_ID = new Guid("f4dd85cf-ce1e-e2d1-3171-650938abd2b7");
            RETAIL_RATE_BRANCH_ID = new Guid("f4dd85cf-ce1e-e2d1-3171-650938abd2b7");
            CREDIT_CARD_ID = new Guid("654f73c9-4119-44fe-a990-cd90d4127829");
            RATE_PARAM_TYPE_ID = new Guid("f4dd85cf-ce1e-e2d1-3171-650938abd2b7");
            CUSTOMER_SERVICE_ID = new Guid("de8c41b1-e954-4c5e-ac89-85ad6597d1b0");
            RATE_ID = new Guid("f4dd85cf-ce1e-e2d1-3171-650938abd2b7");
            ORDER_DETAIL_ID = new Guid("d95632fe-3f51-48dc-8e04-5dbd388dc1a2");
            EMPLOYEE_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            CUSTOMER_ID = new Guid("f4dd85cf-ce1e-e2d1-3171-650938abd2b8");
            CUSTOMER_COMPANY_ID = new Guid("f4dd85cf-ce1e-e2d1-3171-650938abd2b9");
            CUSTOMER_MTS_ID = new Guid("f4dd85cf-ce1e-e2d1-3171-650938abd2b0");
            GENDER_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            MARITAL_STATUS_ID = new Guid("F4DD85CF-CE1E-E2D1-3171-650938ABD2B7");
            COMPANY_NAME = "Company Name";
            CUIT = "30-12345678-9";
            ISOALPHA2 = "A2";
            ISOALPHA3 = "A3";
            ISONUMERIC = "IN";
            COUNTRY_NAME = "Argentina";
        }

        public static TestConstants Instance
        {
            get
            {
                lock (padlock)
                {
                    if (instance == null)
                    {
                        instance = new TestConstants();
                    }
                    return instance;
                }
            }
        }

    }
}
